#include "Shm.hpp"
#include "Fifo.hpp"
// 读写共享内存，没有系统调用！
// 共享区属于用户，可以让用户直接使用！
// 共享内存是进程间通信中 速度最快    优点
// 1.映射后，读写，直接被对方看到
// 2.不需要系统调用获取或者写入内容

// 缺点
// 共享内存没有保护机制！！！  对其数据的保护
int main()
{
    Shm shm(pathname, projid, CREATER);
    // 创建管道文件
    NamedFifo fifo(PATH, FILENAME);
    // 文件操作
    FileOper readerfile(PATH, FILENAME);

    readerfile.OpenForRead();

    char *mem = (char *)shm.VirtualAddr();
    while (true)
    {
        if (readerfile.Wait())// 默认回阻塞
        {
            printf("%s\n", mem);
            sleep(1);
        } 
        else
            break;
    }

    readerfile.Close();
    return 0;
}